package flst.ipiweb.dao;

public class DAOFactory {

	private static ArticleDAO articleDAO;
	private static EnseigneDAO enseigneDAO;
	private static AdminDAO adminDAO;
	private static PaiementDAO paiementDAO;
	private static LivraisonDAO livraisonDAO;
	private static CodePromoDAO codePromoDAO;
	private static TypeCodeDAO typeCodePromoDAO;
	private static CommandeDAO commandeDAO;


	public static CommandeDAO getCommandDAO() {
		if (commandeDAO == null)
			commandeDAO = new CommandeDAO();

		return commandeDAO;
	}

	// Gestion des modes de livraison / relais
	public static LivraisonDAO getLivraisonDAO() {

		if (livraisonDAO == null)
			livraisonDAO = new LivraisonDAO();

		return livraisonDAO;

	}

	// Gesiton des articles
	public static ArticleDAO getArticleDAO() {

		if (articleDAO == null) {
			articleDAO = new ArticleDAO();
		}

		return articleDAO;

	}

	// Gestion des administrateurs
	public static AdminDAO getAdminDAO() {

		if (adminDAO == null) {
			adminDAO = new AdminDAO();
		}

		return adminDAO;

	}

	// Gestion des enseignes
	public static EnseigneDAO getEnseigneDAO() {

		if (enseigneDAO == null) {
			enseigneDAO = new EnseigneDAO();
		}

		return enseigneDAO;
	}
	
	//Gestion des types de code promo
	public static TypeCodeDAO getTypeCodePromoDAO() {

			if (typeCodePromoDAO == null) {
				typeCodePromoDAO = new TypeCodeDAO();
			}

			return typeCodePromoDAO;

		}

	//Gestion des modes de paiement
	public static PaiementDAO getPaiementDAO() {

		if (paiementDAO == null) {
			paiementDAO = new PaiementDAO();
		}

		return paiementDAO;
	}
	
	//Gestion des codes promo
		public static CodePromoDAO getCodeDAO() {

			if (codePromoDAO == null) {
				codePromoDAO = new CodePromoDAO();
			}
			
			return codePromoDAO;
		}

}
